Text characters are able to be represented in bitmap or in vector form. In a vector representation, an outline of the character is specified by a set of curves. Vector representations have an advantage of being independent of display or printer resolution. Vector representation of characters is practical for electronically created documents, but they are often not natively available for scanned documents. Scanning of documents generally produce bitmap data for the entire page, including the individual characters present therein. Vectorization of text characters generally results in several advantages. These advantages include, for example, smooth text instead of jagged and bumpy bitmaps; better image quality for scaling and/or printing on different output resolution devices, particularly multi-functional devices and mobile devices; and the shape of the text can be edited with standard graphic tools to enable easy modification of font attributes in order to reformat the text for different purposes or displays.
In text vectorization, dominant points which separate segments of the outline of the bitmap character are often first determined. While most of the dominant points occur at corners and sharp transitions, some dominant points partition smooth curves within the bitmap characters. In a case of a dominant point partitioning a smooth curve within the bitmap character, improved vectorization can be realized if the smooth curve remains smooth in its vector representation. However, vectorization may introduce artificial discontinuities within smooth curves of a character. This occurs both in traditional and OCR-based processing methods for bitmap characters. For instance, sharp edges can be introduced into smooth curves that are partitioned by a dominant point because adjacent segments are coded independently from each other.
Accordingly, what is needed in this art are increasingly sophisticated systems and methods for vectorizing bitmap images of text characters of scanned documents to reduce artificial discontinuities between neighboring segments such that curved edges of the character retain a desired smoothness.